package controller

import (
	"github.com/gin-gonic/gin"
	"lab.com/biz"
	"lab.com/request"
)

type cFile struct {
	APIBase
}

// File .
var File = cFile{}

// FileList return file list
func (file *cFile) FileList(c *gin.Context) {
	inputParams := request.FileListReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	res, err := biz.File.FileList(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, res, err)

}

// FileAdd return file add
func (file *cFile) FileAdd(c *gin.Context) {
	inputParams := request.FileAddReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	err := biz.File.FileAdd(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, nil, err)

}


// FileRename return file rename
func (file *cFile) FileRename(c *gin.Context) {
	inputParams := request.FileRenameReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	err := biz.File.FileRename(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, nil, err)

}

// FileDelete return file delete
func (file *cFile) FileDelete(c *gin.Context) {
	inputParams := request.FileDeleteReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	err := biz.File.FileDelete(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, nil, err)

}


// FileEdit return file edit
func (file *cFile) FileEdit(c *gin.Context) {
	inputParams := request.FileEditReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	err := biz.File.FileEdit(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, nil, err)

}

// FileAccessEdit return file access edit
func (file *cFile) FileAccessEdit(c *gin.Context) {
	inputParams := request.FileAccessEditReq{}
	if err := inputParams.CheckInputParams(c); err != nil {
		file.Resp(c, nil, err)
		return
	}

	err := biz.File.FileAccessEdit(c, inputParams)
	if err != nil {
		file.Resp(c, nil, err)
		return
	}
	file.Resp(c, nil, err)

}